<!DOCTYPE html> 
<html> 
	<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1"> 
	<title>jQuery Mobile Docs - Text inputs</title> 
	<link rel="stylesheet"  href="../../themes/default/" />  
	<link rel="stylesheet" href="../_assets/css/jqm-docs.css"/>
	<script src="../../js/jquery.js"></script>
	<script src="../../experiments/themeswitcher/jquery.mobile.themeswitcher.js"></script>
	<script src="../_assets/js/jqm-docs.js"></script>
	<script src="../../js/"></script>
</head> 
<body> 

	<div data-role="page" class="type-interior">

		<div data-role="header" data-theme="f">
		<h1>Text inputs</h1>
		<a href="../../index.html" data-icon="home" data-iconpos="notext" data-direction="reverse" class="ui-btn-right jqm-home">Home</a>
	</div><!-- /header -->

	<div data-role="content">
		<div class="content-primary">
		
		<form action="#" method="get">


			<p>Text inputs and textareas are coded with standard HTML elements, then enhanced by jQuery Mobile to make them more attractive and useable on a mobile.</p>
			
						<h2>Text inputs</h2>
			<p>To collect standard alphanmeric text, use an <code>input</code> with a <code>type="text"</code> attribute. It's important to  set the <code>for</code> attribute of the <code>label</code> to match the ID of the <code>input</code> so they are semantically associated and wrap them in a <code>div</code> with the <code> data-role="fieldcontain"</code> attribute to group them.</p>

<pre><code>	
&lt;div data-role=&quot;fieldcontain&quot;&gt;
    &lt;label for=&quot;name&quot;&gt;Text Input:&lt;/label&gt;
    &lt;input type=&quot;text&quot; name=&quot;name&quot; id=&quot;name&quot; value=&quot;&quot;  /&gt;
&lt;/div&gt;	
</code></pre>		
			 
			<p>The text input is displayed like this:</p>
	    	<div data-role="fieldcontain">
	         <label for="name">Text Input:</label>
	         <input type="text" name="name" id="name" value=""  />
			</div>

			
			
			<h2>Password inputs</h2>
			<p>For password fields, use an <code>input</code> with a <code>type="password"</code> attribute. Set the <code>for</code> attribute of the <code>label</code> to match the ID of the <code>input</code> so they are semantically associated and wrap them in a <code>div</code> with the <code> data-role="fieldcontain"</code> attribute to group them.</p>

<pre><code>	
&lt;div data-role=&quot;fieldcontain&quot;&gt;
    &lt;label for=&quot;password&quot;&gt;Password Input:&lt;/label&gt;
    &lt;input type=&quot;password&quot; name=&quot;password&quot; id=&quot;password&quot; value=&quot;&quot; /&gt;
&lt;/div&gt;	
</code></pre>	
			 
			<p>The password input is displayed like this:</p>
			<div data-role="fieldcontain">
	         <label for="password">Password Input:</label>
	         <input type="password" name="password" id="password" value="" />
			</div>
			
			
			<h2>More standard HTML5 input types</h2>
			<p>In jQuery Mobile, you can use new HTML5 input types such as <code>email</code>, <code>tel</code>, <code>number</code>, and more. We actively degrade certain types to <code>type=text</code> (currently, <code>range</code> and <code>search</code>) in certain cases when we provide a replacement for that type's native control. You can configure which types are degraded to text through the <code>page</code> plugin's options.</p>
			
			<div data-role="fieldcontain">
	         <label for="number">Number:</label>
	         <input type="number" name="number" id="number" value=""  />
			</div>
			
			<div data-role="fieldcontain">
	         <label for="email">Email:</label>
	         <input type="email" name="email" id="email" value=""  />
			</div>
			
			<div data-role="fieldcontain">
	         <label for="url">Url:</label>
	         <input type="url" name="url" id="url" value=""  />
			</div>
			
			<div data-role="fieldcontain">
	         <label for="tel">Tel:</label>
	         <input type="tel" name="tel" id="tel" value=""  />
			</div>
		

			<h2>Textareas</h2>
			<p>For multi-line text inputs, use a <code>textarea</code> element. The framework will auto-grow the height of the textarea to avoid the need for an internal scrollbar which is very hard to use on a mobile device. </p>
			<p>Set the <code>for</code> attribute of the <code>label</code> to match the ID of the <code>input</code> so they are semantically associated and wrap them in a <code>div</code> with the <code> data-role="fieldcontain"</code> attribute to group them.</p>

<pre><code>	
&lt;div data-role=&quot;fieldcontain&quot;&gt;
	&lt;label for=&quot;textarea&quot;&gt;Textarea:&lt;/label&gt;
	&lt;textarea cols=&quot;40&quot; rows=&quot;8&quot; name=&quot;textarea&quot; id=&quot;textarea&quot;&gt;&lt;/textarea&gt;
&lt;/div&gt;
</code></pre>	
			 
			<p>The textarea is displayed like this and will grow as you type:</p>
			<div data-role="fieldcontain">
			<label for="textarea">Textarea:</label>
			<textarea cols="40" rows="8" name="textarea" id="textarea"></textarea>
			</div>
		
			

	</form>
	
	</div><!--/content-primary -->		
	
	<div class="content-secondary">
		
		<div data-role="collapsible" data-collapsed="true" data-theme="b">
			
				<h3>More in this section</h3>
				
				<ul data-role="listview" data-theme="c" data-dividertheme="d">
				
					<li data-role="list-divider">Form elements</li>
					<li><a href="docs-forms.html">Form basics</a></li>
					<li><a href="forms-all.html">Form element gallery</a></li>
					<li data-theme="a"><a href="forms-text.html">Text inputs</a></li>
					<li><a href="forms-search.html">Search inputs</a></li>
					<li><a href="forms-slider.html">Slider</a></li>
					<li><a href="forms-switch.html">Flip toggle switch</a></li>
					<li><a href="forms-radiobuttons.html">Radio buttons</a></li>
					<li><a href="checkboxes/index.html">Checkboxes</a></li>
					<li><a href="selects/index.html">Select menus</a></li>
					<li><a href="forms-themes.html">Theming forms</a></li>
					<li><a href="forms-all-native.html">Native form elements</a></li>
					<li><a href="forms-sample.html">Submitting forms</a></li>
					<li><a href="plugin-eventsmethods.html">Plugin methods</a></li>
	
				</ul>
		</div>
	</div>		

</div><!-- /content -->

<div data-role="footer" class="footer-docs" data-theme="c">
		<p>&copy; 2011 The jQuery Project</p>
</div>
	
</div><!-- /page -->

</body>
</html>
